﻿// See https://aka.ms/new-console-template for more information

// TODO: 编写程序输出用户指定数据的所有素数因子。
// TODO: 编程求一个整数数组的最大值、最小值、平均值和所有数组元素的和。
// TODO: 用“埃氏筛法”求2~ 100以内的素数。2~ 100以内的数，先去掉2的倍数，再去掉3的倍数，再去掉4的倍数，以此类推...最后剩下的就是素数。
// TODO: 编写面向对象程序实现长方形、正方形、三角形等形状的类。每个形状类都能计算面积、判断形状是否合法。请尝试合理使用接口/抽象类、属性来实现。
// TODO: 随机创建10个形状对象，计算这些对象的面积之和。请尝试使用简单工厂设计模式来创建对象。

using System.Collections;

string input;

input = Console.ReadLine();

int inputN = Int32.Parse(input);

SortedSet<Int32> set = new SortedSet<Int32>();

for (int i = 1; i <= inputN ; i++)
{
    set.Add(i);
}

for (int i = 2; i <= inputN; i++)
{
    Int32 temp;
    if (set.TryGetValue(i, out temp))
    {
        for (Int32 k = temp * 2; k <= inputN; k += temp)
        {
            set.Remove(k);
        }
    }
}

set.Remove(1);
while (inputN != 1)
{
    foreach (var k in set)
    {
        if (inputN%k == 0)
        {
            inputN = inputN / k;
            Console.WriteLine(k);
            break;
        }
    }
}